gHiddenFlags = {}
gHiddenFlags["Hide Models"] = 1
gHiddenFlags["Hide Sounds"] = 2
gHiddenFlags["Hide Effects"] = 3
gHiddenFlags["Hide Attached Lights"] = 4
gHiddenFlags["Hide Vox"] = 5
gHiddenFlags["Hide Because Contained"] = 6

function function_16(param0)
		if (param0 == 0) then
		return 
	end
	local myvar_1 = 0
	myvar_1 = SetBit(myvar_1, gHiddenFlags["Hide Because Contained"])
	myvar_1 = BitwiseOr(GetObjectData(param0, ObjData["Hidden Flags"]), myvar_1)
	SetObjectData(param0, ObjData["Hidden Flags"], myvar_1)
	SetObjectData(param0, ObjData["disabled"], 2)
	OverrideTreeTable(param0, 2, 2, True)
	myvar_2 = GetObjectData(param0, ObjData["slot count"])
		if (myvar_2 == 0) then
		return 
	end
	local myvar_3 = 0
	local myvar_5 = 1
	for myvar_3=0, (myvar_2 - 1), myvar_5 do 
	myvar_6 = GetObjectIdInSlot(param0, myvar_3)
	nHidden["HideContainedObjects"](myvar_6)
	end
end

{}["HideContainedObjects"] = function_16

function function_18(param0)
		if (param0 == 0) then
		return 
	end
	local myvar_1 = 0
	myvar_1 = GetObjectData(param0, ObjData["Hidden Flags"])
	myvar_1 = ClearBit(myvar_1, gHiddenFlags["Hide Because Contained"])
	SetObjectData(param0, ObjData["Hidden Flags"], myvar_1)
	myvar_2 = GetObjectData(param0, ObjData["lead tile object ID"])
	myvar_3 = GetObjectData(myvar_2, ObjData["For Sale Flags"])
		if (IsBitSet(myvar_3, 1) ~= 0) then 
	

			if (RunTreeWithGuid(GlobalObjManager["getObjectGUIDFromObjectId"](GlobalObjManager, param0), "CT - For Sale - Custom Table Override") ~= 0) then 
	

		end
			if (RunTreeWithGuid(GlobalObjManager["getObjectGUIDFromObjectId"](GlobalObjManager, param0), "CT - For Sale - Do Not Disable Main") ~= 0) then 
	

			local myvar_10 = 0
			SetObjectData(param0, ObjData["disabled"], myvar_10)
		end
		myvar_10 = GetTemp(2)
		local myvar_11 = True
		OverrideTreeTable(param0, GetTemp(1), myvar_10, myvar_11)
	else
		OverrideTreeTable(param0, 0, 0, True)
		SetObjectData(param0, ObjData["disabled"], 0)
	end
	myvar_4 = GetObjectData(param0, ObjData["slot count"])
		if (myvar_4 == 0) then
		return 
	end
	local myvar_5 = 0
	local myvar_7 = 1
	for myvar_5=0, (myvar_4 - 1), myvar_7 do 
	myvar_10 = myvar_5
	myvar_8 = GetObjectIdInSlot(param0, myvar_10)
	myvar_10 = myvar_8
	nHidden["ShowContainedObjects"](myvar_10)
	end
end

{}["ShowContainedObjects"] = function_18

function function_20(param0)
	local myvar_1 = 0
	myvar_1 = SetBit(myvar_1, gHiddenFlags["Hide Models"])
	myvar_1 = SetBit(myvar_1, gHiddenFlags["Hide Sounds"])
	myvar_1 = SetBit(myvar_1, gHiddenFlags["Hide Effects"])
	myvar_1 = SetBit(myvar_1, gHiddenFlags["Hide Attached Lights"])
	myvar_1 = SetBit(myvar_1, gHiddenFlags["Hide Vox"])
	myvar_3 = GetObjectData(param0, ObjData["Hidden Flags"])
	myvar_1 = BitwiseOr(myvar_3, myvar_1)
	myvar_3 = param0
	SetObjectData(myvar_3, ObjData["Hidden Flags"], myvar_1)
end

{}["HideObject"] = function_20
nHidden = {}
